import axios from 'axios'

// 创建 axios 实例
const request = axios.create({
  baseURL: '', // api base_url
  timeout: 5000 // 请求超时时间
})

// 添加请求拦截器
request.interceptors.request.use(config => {
  // const token = Vue.ls.get(ACCESS_TOKEN)
  // if (token) {
  //   config.headers['Authorization'] = `Bearer ${token}` // 让每个请求携带自定义 token 请根据实际情况自行修改
  // }
  return config
}, error => {
  // 对请求错误做些什么
  return Promise.reject(error)
})

// 添加响应拦截器
request.interceptors.response.use(response => {
  // 对响应数据做点什么
  return response.data
}, error => {
  // 对响应错误做点什么
  if (error && error.response) {
    switch (error.response.status) {
      case 400:
        console.log('错误请求')
        break
      case 401:
        console.log('未授权,请重新登录')
        break
      case 403:
        console.log('拒绝访问')
        break
      case 404:
        console.log('请求错误,未找到该资源')
        break
      case 500:
        console.log('服务端出错')
        break
    }
  }
  return Promise.reject(error)
})

export default request
